package com.campus.service;

import com.campus.vo.ChatRecordsVO;
import jakarta.websocket.Session;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;

import java.util.List;

/**
 * @author TaiZai
 * @data 2024/11/9 16:00
 */
public interface AIService {

    /**
     * 调用 CloseAI 接口请求聊天
     */
    void chatWithCloseAI(String message, Session session);

    /**
     * 根据传入的聊天记录生成标题再插入数据库并将记录返回
     * @param message
     * @param userId
     * @return
     */
    ChatRecordsVO.item makeChatTitle(String message, Long userId);

    /**
     * 获取某个用户的全部聊天记录
     * @param userId
     * @return
     */
    List<ChatRecordsVO> queryChatRecordsByUserId(Long userId);

    /**
     * 根据ID获取聊天记录数据
     * @param recordId
     * @return
     */
    ChatRecordsVO.item queryChatRecordById(Long recordId);

    /**
     * 更新聊天记录数据
     * @param record
     */
    void updateChatRecord(ChatRecordsVO.item record);

    /**
     * 删除单个聊天记录
     * @param recordId
     */
    void deleteChatRecord(Long recordId);
}
